package tech.xs.common.framework.init;

import org.springframework.core.annotation.Order;

public interface InitExecute {


    void execute() throws Exception;

    /**
     * 执行顺序,值越小,优先级越高
     *
     * @return 排序值
     */
    default int order() {
        Order order = this.getClass().getAnnotation(Order.class);
        if (order != null) {
            return order.value();
        }
        return Integer.MAX_VALUE;
    }

    /**
     * 出现错误是否中断执行
     *
     * @return true则中断执行
     */
    default boolean isErrorStop() {
        return false;
    }

}
